package com.loyal.loyalerp.service;

import java.util.List;

import com.github.pagehelper.PageInfo;
import com.loyal.loyalerp.humenresource.employee.data.Gy_PersonData;
import com.loyal.loyalerp.model.Employee;
import com.loyal.loyalerp.model.GyUser;
import com.loyal.loyalerp.model.vo.UserNameAndCode;

public interface EmployeeService {
	public PageInfo<Employee> listEmployee(Integer PageNum, Integer recordNum, String sord);

	public boolean editEmployee(String oper, Employee employee);

	public Employee findEmployee(Long id);

	public PageInfo<Employee> findEmployee(Integer PageNum, Integer recordNum, String sord, String searchField,
			String searchString);

	public List<GyUser> getAllEmploy();

	// 删除根据主键用户
	public void deleteUser(int id);

	// 添加用户
	public void addUser(GyUser user);

	// 更新用户
	public void updateUser(GyUser user);

	// 根据用户编码进行查询
	public List<GyUser> queryUserByUsercode(String code);

	// 根据用户姓名进行查询
	public List<GyUser> queryUserByUserName(String code);

	// 获得所有公司
	public List<String> getAllCompany();

	// 判断用户是否已经存在
	public int selectUserHasExist(String usercode);

	// 根據用戶主鍵查詢用戶編碼
	public String selectUsercodeByPrimaryKey(int key);

	// 根据公司名称查询公司Id
	public int selectCompanyIdByName(String companyName);

	// 查询所有的用户编码
	public List<UserNameAndCode> selectAllUserCodeAndName();

	public GyUser selectPersonByCode(String code);

	// 根据公司Id查询公司名称
	public String selectCompanyNameById(int companyId);

	// 查看所有未注册的员工
	public List<UserNameAndCode> selectAllUnRegistPerson();

	// 根据personCode获得person的信息
	public Gy_PersonData getPersonDataByPersonCode(int personCode);

	public List<GyUser> getUserByMobile(String mobile);
}
